Главная arrow книги arrow Копия Глава 24. Восприятие arrow Обнаружение краев
Обнаружение краев

Поскольку края соответствуют тем участкам изображения, где яркость подвергается резким изменениям, то на первый взгляд может показаться, что достаточно дифференцировать изображение и найти такие места, где производная т1 (х) принимает большое значение. И действительно, такой подход в определенной степени осуществим. Тем не менее, как показано на рис. 24.6, б, кроме основного пикового значения с координатой х=50, обнаруживаются также дополнительные пиковые значения в других местах (например, с координатой х=7 5), которые могут быть ошибочно приняты за настоящие края. Эти дополнительные пиковые значения возникают из-за наличия шума в изображении. Если вначале будет проведено сглаживание изображения, то количество фиктивных пиков уменьшится, как показано на рис. 24.6, в.

Теперь у нас появляется возможность применить на данном этапе определенную оптимизацию, поскольку операции сглаживания и поиска краев можно объединить в одну операцию. Существует теорема, согласно которой для любых функций f u g производная свертки, (f*g) ', равна свертке с производной, f*(g) '. Поэтому вместо сглаживания изображения с последующим дифференцированием можно просто выполнить свертку изображения с производной гауссовой функцией сглаживания, . Таким образом, алгоритм поиска края в одном измерении может быть представлен следующим образом.

1. Выполнить свертку изображения I с функциейдля получения результатов свертки R.

Рис. 24.6. Верхний рисунок: профиль интенсивности I (х) вдоль одномерного разреза, пересекающего край, который характеризуется ступенчатым изменением яркости. Средний рисунок: производная интенсивности, I ' (х). Большие значения на этом графике соответствуют краям, но представленные на нем данные содержат шум. Нижний рисунок: производная от сглаженной версии данных об интенсивности, , которая может быть вычислена в одном шаге как свертка. Исчез появившийся под воздействием шума пик с координатой x=75, который в других условиях рассматривался бы как признак наличия края

2. Обозначить как края те пиковые значения в | | R (χ) | |, которые превышают некоторое заранее заданное пороговое значение т. Это пороговое значение выбирается таким образом, чтобы можно было устранить фиктивные пиковые значения, возникшие под воздействием шума.

В двух измерениях края могут проходить под любым углом Θ. Для обнаружения вертикальных краев можно применить такую очевидную стратегию: выполнить свертку с . В направлении у эффект этой операции сведется к тому, что будет выполнено только сглаживание (под воздействием гауссовой свертки), а в направлении χ результатом операции станет то, что дифференцирование будет сопровождаться сглаживанием. Поэтому алгоритм обнаружения вертикальных краев состоит в следующем.

1.    Выполнить свертку изображения I(х,у) с функцией доя получения результатов свертки

2.    Обозначить как края те пиковые значения в, которые превышают некоторое заранее заданное пороговое значение т.

Для того чтобы обнаружить какой-либо край, имеющий произвольную ориентацию, необходимо выполнить свертку изображения с двумя фильтрами, , где функциясоответствует функции, график которой повернут на 90°. Таким образом, алгоритм обнаружения краев, имеющих произвольную ориентацию, состоит в следующем.

1.    Выполнить свертку изображения I(х,у) с функциями доя получения соответственно результатов свертки. Определить

2.    Обозначить как края те пиковые значения в, которые превышают некоторое заранее заданное пороговое значение т.

После того как с помощью этого алгоритма будут отмечены пикселы краев, на следующем этапе необходимо связать друг с другом те пикселы, которые принадлежат к одним и тем же кривым краев. Такую операцию можно выполнить, приняв предположение, что любые два соседних пиксела, которые являются пикселами края с совместимыми ориентациями, должны принадлежать к одной и той же кривой края. Описанный выше процесс получил название процесса обнаружения края Кэнни в честь его разработчика Джона Кэнни (John Canny).

Края после их обнаружения становятся основой для многих этапов последующей обработки: их можно использовать для выполнения стереооптической обработки, обнаружения движения или распознавания объектов.